到客戶端後,總該做系統的更新部分拉!
在更新之前先來簡單的替換語法
在google 功能時,總會有一些$(var.xxx)的告知,除了官方定義好的,
很多都是自訂的部分,我們現在也來一個$(var.Version)的自訂參數,
我們在Product內的Version,1.0.0.0修改成$(var.Version)
然後我們在專案上面右鍵屬性
在Build的頁面 打上Version = 1.0.0 這樣
這樣就可以自訂了所需要的參數
WixToolset 有幾個更新系統的方法
1.小功能更新(Small updates)
2.大版本更新(Major upgrades)
3.升級補丁包(Minor upgrades And Small updates)
我們先講大版本更新(Major upgrades)
主要就是能夠刪除舊版本,安裝新版本的方式,
不用我們手動去做移除的動作,
我們加入這段程式碼在Product.wxs 內就可以做到
<Fragment>
<Upgrade Id="c838fc64-a406-4645-acd2-de581c7cfed9">
<UpgradeVersion OnlyDetect="no" Property="PREVIOUSFOUND"
Minimum="1.0.0" IncludeMinimum="yes"
Maximum="$(var.Version)" IncludeMaximum="no" />
</Upgrade>
</Fragment>
PREVIOUSFOUND:針對舊版本的部分
OnlyDetect:no=刪除,yes=不刪
Minimum:最小版本
Upgrade 的Id使用我們Product裡面的UpgradeCode
設定好了以後
我們先安裝一個版本為1.0.0的Demo程式
之後
我們再改成版本號 1.0.1的Demo程式安裝上去
這時候會發現我們1.0.0版本就會移除掉了
如果我們再重裝1.0.0上去,這時候安裝
就會被擋住
主要擋住的部分是最一開始Product.wxs預設的語法,
所以如果有舊版本安裝就直接用這段當檢測就行了!
如果我們是用4個數字組的版本號了話1.0.0.0
WixToolset內建設定好了,如果是改最後1碼,就是變成小功能更新(Small updates)的方式,
實際上我們安裝好1.0.0.0後,再裝1.0.0.1後,
安裝完成會直接變成重疊的樣式!
升級補丁包的安裝方式,
因為看起來很麻煩,
所以我...沒有嘗試過XD
可以參考這篇
https://developer.aliyun.com/article/265819
Day18程式碼
https://github.com/Aslan7826/defaultMVC/commits/Day18